25
How can I determine if the giving input object is a file, folder (sample 2)

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		DevOut( Transform(oThumbnail:FormatABC("`The ` + fname + ` ` + ( ffolder = -1 ? `is a folder` : ( ffolder = +1 ? `is a file` : `is not found` ) ) + `.`",,,,"C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"),"") )
		DevOut( Transform(oThumbnail:FormatABC("`The ` + fname + ` ` + ( ffolder = -1 ? `is a folder` : ( ffolder = +1 ? `is a file` : `is not found` ) ) + `.`",,,,"C:\Program Files\Exontrol\ExThumbnail\Sample"),"") )
		DevOut( Transform(oThumbnail:FormatABC("`The ` + ffile + ` ` + ( ffolder = -1 ? `is a folder` : ( ffolder = +1 ? `is a file` : `is not found` ) ) + `.`",,,,"C:\Program Files\Exontrol\ExThumbnail\Sample\elogo2.jpg"),"") )

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
24
Is there any function to get automatically the size of the file in KB, MB or GB

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Size: <b>` + fsizeF"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
23
How can I get the size of the file (GB)

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Size: <b>` + ( (fsize/1024/1024/1024) format `` ) + ` GB(s)`"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
22
How can I get the size of the file (MB)

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Size: <b>` + ( (fsize/1024/1024) format `` ) + ` MB(s)`"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
21
How can I get the size of the file (KB)

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Size: <b>` + ( (fsize/1024) format `` ) + ` KB(s)`"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
20
How can I get the size of the file (bytes)

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Size: <b>` + fsize + ` byte(s)`"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
19
How do I get the time the file was created, opened and modified

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:Padding := ""
		oThumbnail:Alignment := 33/*exAlignBottomCenter*/
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Created: <b><r>` + date(fcreated - bias/24/60) + `</b>` + `<br>` + `Modified: <b><r>` + date(fmodified - bias/24/60) + `</b>`+ `<br>` + `Last Opened: <r><b>` + date(fopened - bias/24/60) + `</b>`"
		oThumbnail:SingleCaption := oThumbnail:Caption()
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
18
How can I display the date/time the file/folder was last opened

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Opened: <b>` + date(fopened - bias/24/60)"
		oThumbnail:SingleCaption := oThumbnail:Caption()
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
17
How can I display the date/time the file/folder was last modified

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Modified: <b>` + date(fmodified - bias/24/60)"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
16
How can I display the date/time the file/folder was created

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Created: <b>` + longdate(date(fcreated - bias/24/60)) + ` ` + time(date(fcreated - bias/24/60))"
		oThumbnail:SingleCaption := oThumbnail:Caption()
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
15
How can I get the alternate name of the file

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Alternate Name: <b>` + faname + `</b>, Name: <b>` + fname"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
14
How can I get the file's extension

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Extension: <b>` + fext"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
13
I've noticed the Caption property can use expressions, based on the file, the question is how can I use that feature without the Caption property

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		DevOut( Transform(oThumbnail:FormatABC("ffile +` ` + ( len(fname) ? `this is a file/folder`: `not found`)",,,,"C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"),"") )

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
12
Can I determine if a file/thumbnail exists (sample 1)

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:AddInputFiles("C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg")
		oThumbnail:AddInputFiles("sss")
		oThumbnail:Caption := "len(fname) ? `this is a file/folder` : `<fgcolor=FF0000><u>not found`"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
11
How can I display the name of the file

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "`Name: <b>` + fname"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
10
How can I display the full name of the file

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"
		oThumbnail:Caption := "ffile"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
9
How can I display the index/number of files/thumbnails

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:BeginUpdate()
		oThumbnail:AcceptFolders := -1/*exIncludeSubFilesOnly*/
		oThumbnail:AddInputFiles("C:\Program Files\Exontrol\ExThumbnail\Sample")
		oThumbnail:Caption := "(findex + 1) + ` of ` + fcount"
		oThumbnail:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
8
How can I add more files ( sample 3 )

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:AddInputFiles("C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg")
		oThumbnail:AddInputFiles("C:\Program Files\Exontrol\ExThumbnail\Sample\device.png")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
7
How can I add more files ( sample 2 )

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg\r\nC:\Program Files\Exontrol\ExThumbnail\Sample\logo.png\r\nC:\Program Files\Exontrol\ExThumbnail\Sample\cordova.png"

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
6
How can I add more files ( sample 1 )

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:InputFile := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg\r\nC:\Program Files\Exontrol\ExThumbnail\Sample\EndangeredAnimals.png"

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
5
How do I clear the control's content
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:InputFile := ""

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
4
How can I add a file ( sample 3 )

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:AddInputFiles("C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
3
How can I add a file ( sample 2 )

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:InputFiles := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
2
How can I add a file ( sample 1 )

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:InputFile := "C:\Program Files\Exontrol\ExThumbnail\Sample\elogo.jpg"

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
1
How do I change the control's background color
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oThumbnail

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oThumbnail := XbpActiveXControl():new( oForm:drawingArea )
	oThumbnail:CLSID  := "Exontrol.Thumbnail.1" /*{44BA596F-E225-476B-81B1-3BDE56AC595A}*/
	oThumbnail:create(,, {10,60},{610,370} )

		oThumbnail:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 240,240,240 } )  , .F. ))

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN